﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using DALC.AcessoDALC;
using System.Data;
using System.Web.Services;


namespace Roteirização
{
    public class Service
    {
        private DataTable ResgataTransp()
        {
            DataTable DsValc = new DataTable();
            ConexaoDALC con = new ConexaoDALC();
            DsValc = con.RetornaDataTable("SELECT ID_EMPRESA, RUA_E, NUMERO_E, BAIRRO_E, CIDADE_E, ESTADO_E, CEP_E FROM empresaS", CommandType.Text);

            return DsValc;
        }

        private DataTable ResgataEntregas(string dataentrega, Int16 empresa)
        {
            DataTable DsClientes = new DataTable();
            ConexaoDALC con = new ConexaoDALC();
            String Sql;

            Sql = "SELECT C.ID_CLIENTE, RUA_C, NUMERO_C, BAIRRO_C, CIDADE_C, ESTADO_C, CEP_C FROM ENTREGAS E, CLIENTES C WHERE C.ID_CLIENTE = E.ID_CLIENTE ";
            Sql = Sql + " AND PREV_ENTREGA = '" + TrataData(dataentrega) + "'";
            Sql = Sql + " AND STATUS_ROTA = '' ";
            if (empresa != 0)
            Sql = Sql + " AND ID_CLIENTE = " + empresa;

            DsClientes = con.RetornaDataTable(Sql, CommandType.Text);

            return DsClientes;
        }

        public String TrataData(String Data)
        {
            return DateTime.Parse(Data).ToString("yyyy-MM-dd");
        }

        private String MontaStringEndereco(DataTable end)
        {
            String Retorno = "";

            foreach (DataRow dRow in end.Rows)
            {
                Retorno = dRow[1].ToString().Replace(' ', '+') + "+" + dRow[2].ToString().Replace(' ', '+') + "+" + dRow[3].ToString().Replace(' ', '+') + "+" + dRow[4].ToString().Replace(' ', '+') + "+" + dRow[5].ToString().Replace(' ', '+') + "+" + dRow[6].ToString().Replace(' ', '+') + "|";
            }

            return Retorno.Substring(0,Retorno.Length-1);
        }

        public String UrlGoogle(string dataentrega)
        {
            DataTable dtTransp = ResgataTransp();
            DataTable dtOrigem = dtTransp;
            DataTable dtDest = ResgataEntregas(dataentrega, 0);
            String sRet;
            String sOrigem, sDestino;

            sRet = "http://maps.googleapis.com/maps/api/distancematrix/xml?origins=";

            sOrigem = MontaStringEndereco(dtOrigem) + "&";



            return "";
        }
    }
}